Beam Maps

WMAP

Computing the Planck CMB temperature power spectrum with healpy anafast

step 1: First we load the Planck data release 3 CMB-only temperature produced by Commander by separating it out from galactic foregrounds:

.

Tool used

!curl "https://irsa.ipac.caltech.edu/data/Planck/release_3/all-sky-maps/maps/component-maps/cmb/COM_CMB_IQU-commander_2048_R3.00_full.fits" -o COM_CMB_IQU-commander_2048_R3.00_full.fits

loading masks file

Tool used

!curl "https://irsa.ipac.caltech.edu/data/Planck/release_3/ancillary-data/masks/COM_Mask_CMB-common-Mask-Int_2048_R3.00.fits" -o COM_Mask_CMB-common-Mask-Int_2048_R3.00.fits

Observation: There is residual galactic emission we should mask. The contamination just close to the galactic plane, (we could run anafast and specify a few degrees of gal_cut).

Now,we can load the binned TT CMB power spectrum:

Tool used

!curl "https://irsa.ipac.caltech.edu/data/Planck/release_3/ancillary-data/cosmoparams/COM_PowerSpect_CMB-TT-binned_R3.01.txt" -o COM_PowerSpect_CMB-TT-binned_R3.01.txt

Computing the power spectrum

Power spectra are generally plotted as $D_\ell$ which is defined as $\dfrac{\ell(\ell+1)}{2 \pi}C_\ell$, so we need to apply that factor to the $C_\ell$ calculated from the map.

Beam Correction

Reading the documentation of the Planck release we see that the output has a resolution of 5 arcminutes. Therefore as a first order correction of the beam, we can divide the power spectrum by the square of the beam window function.

Intermediate(Getting Clean Map used for analysis)

The kernel can then be used directly when calling convolve()

Bingo

getting alms of map(sample) used from Planck

NB: The pixels which have the special UNSEEN value are replaced by zeros before spherical harmonic transform. They are converted back to UNSEEN value, so that the input maps are not modified. Each map have its own, independent mask.

" Multiply alm by a function of l. The function is assumed to be zero where not defined.

Parameters almarray The alm to multiply

flarray The function (at l=0..fl.size-1) by which alm must be multiplied.

mmaxNone or int, optional The maximum m defining the alm layout. Default: lmax.

inplacebool, optional If True, modify the given alm, otherwise make a copy before multiplying.

Returns almarray The modified alm, either a new array or a reference to input alm, if inplace is True. "

applying a spherical harmonic transform back to map space (hp.alm2map), using Nside = 1024.

visualise

Alternative approach for alm2map

Rem to divide by hp.pixwin (Unresolved)

Creates a map(s) from cl(s). Parameters cls [array or tuple of array] A cl or a list of cl (either 4 or 6, see synalm()) nside [int, scalar] The nside of the output map(s) lmax [int, scalar, optional] Maximum l for alm. Default: min of 3*nside-1 or length of the cls - 1 mmax [int, scalar, optional] Maximum m for alm. alm [bool, scalar, optional] If True, return also alm(s). Default: False. pol [bool, optional] If True, assumes input cls are TEB and correlation. Output will be TQU maps. (input must be 1, 4 or 6 cl’s) If False, fields are assumed to be described by spin 0 spherical harmonics. (input can be any number of cl’s) If there is only one input cl, it has no effect. Default: True. pixwin [bool, scalar, optional] If True, convolve the alm by the pixel window function. Default: False. fwhm [float, scalar, optional] The fwhm of the Gaussian used to smooth the map (applied on alm) [in radians] sigma [float, scalar, optional] The sigma of the Gaussian used to smooth the map (applied on alm) [in radians] Returns maps [array or tuple of arrays] The output map (possibly list of maps if polarized input). or, if alm is True, a tuple of (map,alm) (alm possibly a list of alm if polarized input)

Devoir: change lmax and rerun